/**
 七、生成器
    概念：就是一个特殊函数。
    (1)、做异步编程使用，纯函数调用。
    (2)、yield做分隔符，产生几块代码结果。
    (3)、3个yield产生4块代码块。）
    (3)、next参数做为上一个返回结果使用
 */
function* generator() {
    let one = yield 1;
    console.log(one)
    let two = yield '2只老虎。';
    console.log(two)
    let three = yield 3;
    console.log(three)
    yield 4;
}

let gen = generator()
console.log(gen)
console.log(gen.next()) //1
console.log(gen.next('222')) //2
console.log(gen.next('444')) //3
console.log(gen.next()) //4
console.log(gen.next()) //5
/**
 * 2、生成器遍历
 *    打印yield的结果。
 */
for (const value of generator()) {
    console.log("value:",value)
}